package structure.proxy;

public class RequestProxy {

    Request request;

    /**
     * 代理模式在客户端与目标对象之间起到一个中介作用和保护目标对象的作用；
     * 代理对象可以扩展目标对象的功能；
     * 代理模式能将客户端与目标对象分离，在一定程度上降低了系统的耦合度，增加了程序的可扩展性
     *
     * 增加了系统的复杂性
     * 延迟加载
     */
    public void request() {
        if (true) {
            preHandle();
        }
        request.request();
    }

    public void preHandle() {

    }
    public void postHandle() {

    }
}
